package cn.itsource.aigou.domain;

import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

/**
 * 封装存储到ES中的数据
 *
 *
 * 方便查询 ： 查询条件
 *  使用一个all字段来存放所有的关键字查询的字段，中间用空格分隔，空格前后会默认分词
 *   all（keyword）: 商品标题 商品副标题 品牌名称 类型名称
 *   类型编号
 *   品牌编号
 *   最低价格 -- sku最高价格
 *   最高价格 -- sku最低价格
 *
 *   销量
 *   上架时间
 *   评论数量
 *   浏览量
 *
 *
 * 方便获取数据 ： 页面要展示哪些数据
 *   商品标题
 *   商品副标题
 *   skuProperties
 *   viewProperties
 *   medias
 *
 *
 */
@Data
@NoArgsConstructor
@ToString
@Document(indexName = "aigou-product")
public class ProductDoc {

    @Id
    private Long id;

    @Field(type = FieldType.Text,analyzer = "ik_max_word",searchAnalyzer = "ik_max_word")
    private String all;

    private Long productTypeId;

    private Integer minPrice;

    private Integer maxPrice;

    private Integer saleCount; // 销量

    private Long onSaleTime; // 上架时间

    private Integer commentCount; // 评论数量

    private Integer viewCount; // 浏览量

    private String name; //标题

    private String subName; //副标题

    private String skuProperties; // sku属性

    private String viewProperties; // 显示属性

    private String medias; // 媒体属性


}
